iT邦幫忙

2024 iThome 鐵人賽

DAY 6
0
自我挑戰組

認識JavaScript系列 第 6

[第六天] Callback

  • 分享至 

  • xImage
  •  

前面幾天都提到了非同步的用法,那就不能缺席 Callback!

定義
callback function是指能藉由參數(argument)通往另一個函式的函式。
它會在外部函式內調用、以完成某些事情。

範例

function getData(callback) {
    setTimeout(function() {
        const data = { id: 1, name: "Irene" };
        callback(data);
    }, 3000);
    HelloWorld();
}

function showData(data) {
    console.log("data: ", data);
}

function HelloWorld() {
    console.log("Hello World!");
}

getData(showData);

getData開始執行,並且設定setTimeout。
而在計時時,會繼續執行其他[HelloWorld](而不是等待3秒)
,直到3秒到了,才呼叫showData。

所以畫面上會立即看到Hello World!
再顯示data: id: 1, name: "Irene"

另外,平常最常見的就是在按鈕上增加監聽事件,
也就是 [第二天] Click事件 提到的 JavaScript的addEventListener方法!
這就是Callback應用啦!

wow 竟然串起來了 XD


上一篇
[第五天] async/await
下一篇
[第七天] 試著解題 2635. Apply Transform Over Each Element in Array
系列文
認識JavaScript30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言